package com.freeman.cement.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 交接班记录
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("shift")
public class ShiftRecord {
    //数据表中的主键
    //mybatis-plus使用自增长id
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 值班室id
     */
    @TableField("deptid")
    private Integer deptid;
    /**
     * 值班室名称
     */
    @TableField("deptName")
    private String deptName;
    /**
     * 交班人员id
     */
    private Integer shiftstaff;
    /**
     * 交班人员姓名
     */
    @TableField("shiftStaffName")
    private String shiftStaffName;
    /**
     * 接班人员id
     */
    private Integer successor;
    /**
     * 接班人员姓名
     */
    @TableField("")
    private String successorName;

    //复杂且没有意义
    //当班开始时间，就是值班用户登录时刻
    //public Date dutystarttime;
    //当班结束时间，值班用户退出登录的时刻，也就是如果值班人员进行交班的话等于交班时间，如果值班人员不进行交班的话，等于用户退出登录的时刻。
    //public Date dutyendtime;

    /**
     * 交班时间
     */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//页面写入数据库时格式化
    @JSONField(format="yyyy-MM-dd HH:mm:ss")//数据库导出页面时json格式化
    private Date shifttime;

    /**
     * 接班时间
     */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//页面写入数据库时格式化
    @JSONField(format="yyyy-MM-dd HH:mm:ss")//数据库导出页面时json格式化
    private Date successtime;

    /**
     * 备注
     */
    private String memo;

}
